package com.sunop.pantiproblem.model;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import java.time.LocalDateTime;

import jakarta.json.JsonObject;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @author hutao666123
 * @since 2025-03-18
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("problem")
public class Problem implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @TableField("title")
    private String title;

    @TableField("poster")
    private String poster;

    @TableField("content")
    private String content;

    @TableField("time_limit")
    private Long timeLimit;//1 秒 = 1,000,000,000 纳秒

    @TableField("memory_limit")
    private Long memoryLimit;//104857600 字节 = 100 MB

    @TableField("example_cin")
    private String exampleCin;//输入样例

    @TableField("example_out")
    private String exampleOut;//输出样例

    @TableField("difficulty")
    private int difficulty;//0简单、1中等、2困难

    @TableField("tag")
    private String tag;// 数组,哈希表

    @TableField("create_time")
    private LocalDateTime creatTime;

    @TableField("comment_num")
    private Integer commentNum;

    @TableField("pass_num")
    private Integer passNum;

    @TableField("submit_num")
    private Integer submitNum;

}
